package br.com.baco.recurso.negocio;

import java.util.List;

import android.content.Context;
import br.com.baco.evento.dominio.Evento;
import br.com.baco.recurso.RecursoFactory;
import br.com.baco.recurso.dominio.Recurso;
import br.com.baco.recurso.persistencia.IRecursoDAO;

public class RecursoServices implements IRecursoServices{
	
	private IRecursoDAO recursoDao;
	
	public RecursoServices(Context context){
		this.setRecursoDao(RecursoFactory.getInstance().createDAO(context));
	}

	@Override
	public Recurso cadastrar(Recurso recurso) {
		// TODO Auto-generated method stub
		try {
			return this.getRecursoDao().salvar( recurso );
		} catch (Exception e) {
			return null;
		}
	}

	@Override
	public boolean editar(Recurso recurso) {
		// TODO Auto-generated method stub
		try {
			if(this.getRecursoDao().editar( recurso )) return true;
			return false;
		} catch (Exception e) {
			return false;
		}
	}

	@Override
	public boolean excluir(Recurso recurso) {
		// TODO Auto-generated method stub
		try {
			if(this.getRecursoDao().excluir( recurso )) return true;
			return false;
		} catch (Exception e) {
			return false;
		}
	}

	@Override
	public Recurso visualizar(int id) {
		// TODO Auto-generated method stub
		try {
			return this.getRecursoDao().getById(id);
		} catch (Exception e) {
			return null;
		}
	}

	@Override
	public List<Recurso> listar() {
		// TODO Auto-generated method stub
		try {
			return this.getRecursoDao().getAll();
		} catch (Exception e) {
			return null;
		}
	}

	public IRecursoDAO getRecursoDao() {
		return recursoDao;
	}

	public void setRecursoDao(IRecursoDAO recursoDao) {
		this.recursoDao = recursoDao;
	}

	@Override
	public List<Recurso> recuperarRecursos(Evento evento) {
		// TODO Auto-generated method stub
		return this.getRecursoDao().getByIdEvento(evento.getId());
	}

}
